/**
 * Description:该类主要用于创建圆形滚动条
 * Copyright: 成都和为科技有限公司 2012
 *
 * 属性：
 *   radius - 圆的大小
 *   barColor - 进度颜色
 *   barColorJson - 不同进度不同颜色. Json字符串格式  {'0':'#FF0000','4':'#33CC33'}  0%-4%用什么颜色 4%-100% 用什么颜色
 *   barBgColor - 进度条背景色
 *   barWidth - 进度条宽度
 *   initValue - 初始值
 *   displayNumber - 是否显示数字  默认true
 *   percentage - 是否显示百分比 默认true
 *
 */
function RadioProgressBar() {}

RadioProgressBar.inherit(Control);

/**
 * 初始化方法
 */
RadioProgressBar.prototype.init = function () {
    RadioProgressBar.base.init.call(this);
}

RadioProgressBar.prototype.create = function () {
    var template = "<div></div>";
    this._html = $(template)[0];
}

RadioProgressBar.prototype.initLoad = function() {
    if (!$().radialIndicator) {
        this.loadScriptFile("/public.common//webapi/common/radialIndicator/radialIndicator.min.js");
    }
    var oParam = new Object();
    if (this.getAttribute().radius) oParam.radius  = parseInt(this.getAttribute().radius);
    if (this.getAttribute().barcolor) oParam.barColor  = this.getAttribute().barcolor;
    if (this.getAttribute().barbgcolor) oParam.barBgColor  = this.getAttribute().barbgcolor;
    if (this.getAttribute().barcolorjson) {
        var sBarColorJson = this.getAttribute().barcolorjson.replaceAll("'","\"");
        var oColorJson = JSON.parse(sBarColorJson);
        oParam.barColor  = oColorJson;
    }
    if (this.getAttribute().barwidth) oParam.barWidth  = parseInt(this.getAttribute().barwidth);
    if (this.getAttribute().initvalue) {
        this._value = this.getAttribute().initvalue;
        oParam.initValue  = this.getAttribute().initvalue;
    }
    if (this.getAttribute().displaynumber == "false") oParam.displayNumber  = false;
    if (this.getAttribute().percentage == "false") oParam.percentage  = false;

    $(this._html).radialIndicator(oParam);
    this._progressBar = $(this._html).data('radialIndicator');
}

RadioProgressBar.prototype.setValue = function(sValue) {
    this._progressBar.animate(sValue);
    this._value = sValue;
}

RadioProgressBar.prototype.getValue = function() {
    return this._value;
}
